#pragma once
#include <iostream>
#include <functional>

using task_t = std::function<void()>();
void Download()
{
    std::cout << "download  " << std::endl;
}

class task
{
public:
    task() {}

    task(int x, int y, task_t task) : _x(x), _y(y)
    {
    }
    void Excute()
    {
        _ret = _x + _y;
    }
    int operator()()
    {
        Excute();
    }
    
private:
    int _x;
    int _y;
    int _ret;
};